<?php

namespace App\Common\Model;

use App\Common as com;
use App\Common\Model as nameModel;
use App\Common\Model\WebDebugLog as nameWebDebugLog;

class WebDebugLog extends nameModel\Origin\WebDebugLog {

	use com\Cla\ClaBase\Traits\GoStaticPool;

	/**
	 * @param string $value
	 * @return mixed
	 */
	/*
	public function getXXXAttribute( $value ) {
		if( empty( $value ) ){
			return $value;
		} else{
			return json_decode( $value, true );
		}
	}
	*/

	/**
	 * @param string $value
	 * @return void
	 */
	/*
	public function setXXXAttribute( $value ) {
		$this->attributes['x_xxx'] = $value === [] ? '{}' : json_encode( $value );
	}
	*/

	// ===============================
	//
	//
	// 下面为静态方法
	//
	//
	// ===============================

	/**
	 * @param int|null $dataId
	 * @return nameWebDebugLog\DataUnit
	 */
	public static function dataUnit( ?int $dataId = null ):nameWebDebugLog\DataUnit {
		return new nameWebDebugLog\DataUnit( $dataId );
	}


	/**
	 * @return nameWebDebugLog\DataUnit
	 */
	public static function gosDataUnit():nameWebDebugLog\DataUnit {
		return self::gosPool( 'gosDataUnit', function () {
			return new nameWebDebugLog\DataUnit();
		} );
	}

	/**
	 * @param int|array|null $dataIdOrWhere
	 * @return nameWebDebugLog\DataManager
	 */
	public static function dataManager( $dataIdOrWhere = null ):nameWebDebugLog\DataManager {
		return new nameWebDebugLog\DataManager( $dataIdOrWhere );
	}

}
